//package com.own.aop;
//
//import java.lang.annotation.Documented;
//import java.lang.annotation.ElementType;
//import java.lang.annotation.Retention;
//import java.lang.annotation.RetentionPolicy;
//import java.lang.annotation.Target;
//import java.util.concurrent.TimeUnit;
//
///**
// * RateLimiterAop
// *
// * @author chenxueli
// * @date 2023-12-13 14:48:00
// */
//@Target({ElementType.METHOD})
//@Retention(value = RetentionPolicy.RUNTIME)
//@Documented
//public @interface RateLimiterAop {
//
//    /**
//     * 获取的key
//     *
//     * @return key
//     */
//    String key() default "";
//
//    /**
//     * 单位时间内的令牌数
//     *
//     * @return 令牌数
//     */
//    int rate() default 100;
//
//    /**
//     * 生成令牌的时间间隔
//     *
//     * @return 时间间隔
//     */
//    long rateInterval();
//
//    /**
//     * 时间间隔单位
//     *
//     * @return 时间间隔单位
//     */
//    TimeUnit rateIntervalUnit();
//
//    /**
//     * 超时的时间
//     *
//     * @return 超时时间
//     */
//    int timeout() default 1;
//
//    /**
//     * 超时的单位
//     *
//     * @return 超时单位
//     */
//    TimeUnit timeUnit() default TimeUnit.SECONDS;
//
//    /**
//     * 获取的令牌数量
//     *
//     * @return 令牌数量
//     */
//    int permits() default 1;
//
//    /**
//     * 异常消息
//     *
//     * @return 消息
//     */
//    String message() default "接口访问频繁，请稍后再试";
//
//}
